import { Singleton } from "../../Singleton/Singleton";

export class Logger extends Singleton<Logger> {

    private static _Instance: Logger;
    static get Instance() {
        return this._Instance;
    }

    protected set Instance(value: Logger) {
        Logger._Instance = value;
    }

    constructor() {
        super();
    }

    public Trace(...args) {
        console.log(...args);
    }

    public Debug(...args) {
        console.debug(...args);
    }

    public Info(...args) {
        console.info(...args);
    }

    public TraceInfo(...args) {
        console.info(...args);
    }

    public Warning(...args) {
        console.warn(...args);
    }

    public Error(...args) {
        console.error(...args);
    }

    public Console(...args) {
        console.log(...args);
    }

    public Dispose(): void {

    }

}